package py.cursoweb.model;

import java.io.Serializable;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * Clase que representa filas de la tabla PRODUCTO
 * @author ruben y alfredo
 *
 */
@Entity
@Table(name="producto")
public class Producto implements Serializable {	
	
	@Id
	@Column(name="id")
	private Integer id;
	@Column(name="nombre")
	private String nombre;
	@Column(name="descripcion")
	private String descripcion;
	@Column(name="precio")
	private Integer precio;
	@Column(name="cantidad")
	private Integer cantidad;
	@ManyToOne(cascade={CascadeType.PERSIST,CascadeType.MERGE})
    @JoinColumn(name="proveedor")
	private Proveedor proveedor;
	@OneToMany(mappedBy="producto")
	private List<Compra> compras;
	@OneToMany(mappedBy="producto")
	private List<Venta> ventas;
	
	
	
	public void setId(Integer id) {
		this.id = id;
	}
	public Integer getId() {
		return id;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getNombre() {
		return nombre;
	}
	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}
	public String getDescripcion() {
		return descripcion;
	}
	public void setProveedor(Proveedor proveedor) {
		this.proveedor = proveedor;
	}
	public Proveedor getProveedor() {
		return proveedor;
	}
	public void setCompras(List<Compra> compras) {
		this.compras = compras;
	}
	public List<Compra> getCompras() {
		return compras;
	}
	public void setVentas(List<Venta> ventas) {
		this.ventas = ventas;
	}
	public List<Venta> getVentas() {
		return ventas;
	}
	public void setCantidad(Integer cantidad) {
		this.cantidad = cantidad;
	}
	public Integer getCantidad() {
		return cantidad;
	}
	public void setPrecio(Integer precio) {
		this.precio = precio;
	}
	public Integer getPrecio() {
		return precio;
	}
}
